HTMLParser
非显式调用
1 | from urllib import request |
HTMLParser.handle_starttag(tag,attrs): 解析时遇到开始标签调用,如
<p class='para'>
,参数tag是标签名,这里是’p’,attrs为标签所有属性(name,value)列表,这里是[('class','para')]
HTMLParser.handle_endtag(tag): 遇到结束标签时调用,tag是标签名
HTMLPars.handle_data(data): 遇到标签中间的内容时调用,如
<style> p {color: blue; }</style>
,参数data为开闭标签间的内容.值得注意的是在形如<div><p>...</p></div>
的位置,并不会在div处调用,而是只在p处调用。
显式调用
HTMLParser.feed(data): 参数为需要解析的html字符串,调用后字符串开始被解析
HTMLParser.getpos(): 返回当前的行号和偏移位置,如(23,5)
HTMLParser.get_starttag_text(): 返回当前位置最近的开始标签的内容